{ Unsharp mask subtraction    SDB  }

procedure UnsharpMask(n:integer);
var
  i,num:integer;
begin
  RequiresVersion(1.44);
  num := PicNumber;               { save pic number for later             }    
  ScaleAndRotate(1,1,0);          { copy image (or region) for analysis   }
                                  { xscale=1, yscale=1, angle=0           }
  i := 1;
  while i<=n do
    begin
      ShowMessage(\'Smooth ',i);
      Smooth;                     { make Unsharp Mask                     }
      i := i + 1;
    end;

  SelectAll;
  Copy;
  SelectPic(num);
  Paste;
  Subtract;                       { subtract smoothed image from original }
end;

macro 'Unsharp Mask   4';
begin
  UnsharpMask(4);
end;

macro 'Unsharp Mask   8';
begin
  UnsharpMask(8);
end;

macro 'Unsharp Mask 16';
begin
  UnsharpMask(16);
end;

macro 'Unsharp Mask 32';
begin
  UnsharpMask(32);
end;

macro 'Unsharp Mask 64';
begin
  UnsharpMask(64);
end;


